package com.ymatou.iapi.trading.sellerquery2.testcase;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.experimental.categories.Category;

import com.ymatou.iapi.trading.sellerquery2.parameter.resp.GetSellerSalesAmountResponse;
import com.ymatou.iapi.trading.sellerquery2.parameter.sp.Sp_GetSellerSalesAmount;
import com.ymatou.query.seller.trading.api.parameter.Common;
import com.ymatou.query.seller.trading.api.parameter.GetSellerSalesAmountArguments;
import com.ymatou.query.seller.trading.api.parameter.GetSellerSalesAmountBean;
import com.ymatou.query.seller.trading.api.parameter.TimeRange;
import com.ymt.core.tool.Logger;
import com.ymt.utils.annotation.TestCase;
import com.ymt.utils.annotation.TestSuite;
import com.ymt.utils.tag.P1;
import com.ymt.utils.tag.P2;
import com.ymt.utils.tag.P3;
import com.ymttest.common.enums.DateTypeEnum;
import com.ymttest.common.enums.OrderStatusEnum;
import com.ymttest.utils.DataUtil;
import com.ymttest.utils.EnvSetup;
import com.ymttest.utils.constant.ECode;

/**
 * 查询买手销售额 FreeMaker Template自动生成代码
 */
@TestSuite
public class Ts_GetSellerSalesAmount {

	private static GetSellerSalesAmountBean request;
	//	private static com.ymatou.query.seller.trading.api.service.GetSellerSalesAmountCall call;
	private static com.ymatou.iapi.trading.sellerquery2.service.GetSellerSalesAmountCall call;

	@BeforeClass
	public static void setUp() {
		Logger.createResultFile("查询买手销售额");
	}

	@Before
	public void caseUp() {
		request = new GetSellerSalesAmountBean();
		//		call = new com.ymatou.query.seller.trading.api.service.GetSellerSalesAmountCall();
		call = new com.ymatou.iapi.trading.sellerquery2.service.GetSellerSalesAmountCall();
	}

	@AfterClass
	public static void tearDown() {
		Logger.generateResult(call.getOpurl());
	}

	@After
	public void caseDown() {
		Logger.end();
	}

	private void verify() {
		GetSellerSalesAmountResponse expectedResponse = new GetSellerSalesAmountResponse();
		ConstructExpectedResponse(expectedResponse);
		GetSellerSalesAmountResponse actualResponse = call
				.getSellerSalesAmountResponse();
		Map<Integer, BigDecimal> expect = expectedResponse
				.getSellerSalesAmountDic();
		Map<Integer, BigDecimal> actual = actualResponse
				.getSellerSalesAmountDic();
		if (null == expect) {
			DataUtil.verify(true, actual == null,
					"验证SellerSalesAmountDic == null");
		} else {
			boolean notnull = actual != null;
			DataUtil.verify(true, notnull, "验证SellerSalesAmountDic != null");
			if (notnull) {
				DataUtil.verifyEquals(expect.size(), actual.size(),
						"验证SellerSalesAmountDic的大小");
				Iterator<Integer> keys = expect.keySet().iterator();
				while (keys.hasNext()) {
					Integer expKey = keys.next();
					boolean exist = actual.containsKey(expKey);
					DataUtil.verifyEquals(true, exist,
							"验证SellerSalesAmountDic中是否存在key:[" + expKey + "]");
					if (exist) {
						BigDecimal expValue = expect.get(expKey);
						BigDecimal actValue = actual.get(expKey);
						DataUtil.verify(expValue, actValue,
								"验证SellerSalesAmountDic中是key为[" + expKey
										+ "]的数量");
					}
				}
			}
		}
	}

	private void ConstructExpectedResponse(GetSellerSalesAmountResponse response) {
		GetSellerSalesAmountArguments args = GetArguments();
		Map<Integer, BigDecimal> sellerSalesAmountDic = Execute(args);
		response.setSellerSalesAmountDic(sellerSalesAmountDic);
	}

	private GetSellerSalesAmountArguments GetArguments() {
		GetSellerSalesAmountArguments args = new GetSellerSalesAmountArguments();
		args.setSellerId(request.getSellerId());
		//		args.setOrderSellerAcceptedStatus(OrderStatusEnum.SellerAccept
		//				.getValue());
		//		SetPaidInFullAndStatus(args);
		args.setOrderStatus(request.getOrderStatusList());
		SetTimeRange(args);
		return args;
	}

	//	private void SetPaidInFullAndStatus(GetSellerSalesAmountArguments args) {
	//		args.setOrderStatus(Common.GetSellerOrderStatus(
	//				request.getOrderStatusList(), true));
	//		args.setPaidInFull(Common.paidInFull);
	//	}

	private void SetTimeRange(GetSellerSalesAmountArguments args) {
		if (DataUtil.isNullOrEmpty(request.getDateTypeList())) {
			args.setNeedAll(true);
			return;
		}
		Map<DateTypeEnum, TimeRange> durations = new HashMap<DateTypeEnum, TimeRange>();
		//		for (DateTypeEnum dt : request.getDateTypeList()) {
		//			TimeRange duration = Common.ToTimeRange(DateTypeEnum.valueOf(
		//					dt.toString()).getValue());
		//			durations.put(dt, duration);
		//		}
		for (int dt : request.getDateTypeList()) {
			TimeRange duration = Common.ToTimeRange(dt);
			durations.put(DateTypeEnum.forValue(dt), duration);
		}
		if (durations.containsKey(DateTypeEnum.All)) {
			args.setNeedAll(true);
		}
		args.setThisYear(durations.get(DateTypeEnum.ThisYear));
		args.setThisQuarter(durations.get(DateTypeEnum.ThisQuarter));
		args.setThisMonth(durations.get(DateTypeEnum.ThisMonth));
		args.setThisWeek(durations.get(DateTypeEnum.ThisWeek));
		args.setToday(durations.get(DateTypeEnum.Today));
		args.setYesterday(durations.get(DateTypeEnum.Yesterday));
	}

	private Map<Integer, BigDecimal> Execute(GetSellerSalesAmountArguments args) {
		Map<Integer, BigDecimal> map = new HashMap<Integer, BigDecimal>();
		Sp_GetSellerSalesAmount sp = new Sp_GetSellerSalesAmount();
		sp.setSellerId(args.getSellerId());
		sp.setPaidInFull(args.getPaidInFull());
		sp.setOrderSellerAcceptedStatus(args.getOrderSellerAcceptedStatus());
		sp.setOrderStatus(args.getOrderStatus());
		sp.setAll(args.isNeedAll());
		sp.setYearBegin(GetTime(args.getThisYear(), true));
		sp.setYearEnd(GetTime(args.getThisYear(), false));
		sp.setQuarterBegin(GetTime(args.getThisQuarter(), true));
		sp.setQuarterEnd(GetTime(args.getThisQuarter(), false));
		sp.setMonthBegin(GetTime(args.getThisMonth(), true));
		sp.setMonthEnd(GetTime(args.getThisMonth(), false));
		sp.setWeekBegin(GetTime(args.getThisWeek(), true));
		sp.setWeekEnd(GetTime(args.getThisWeek(), false));
		sp.setTodayBegin(GetTime(args.getToday(), true));
		sp.setTodayEnd(GetTime(args.getToday(), false));
		sp.setYesterdayBegin(GetTime(args.getYesterday(), true));
		sp.setYesterdayEnd(GetTime(args.getYesterday(), false));
		Map<Integer, BigDecimal> rs = sp.execute();
		if (rs != null && rs.size() > 0) {
			Iterator<Integer> it = rs.keySet().iterator();
			while (it.hasNext()) {
				Integer key = it.next();
				map.put(key, rs.get(key));
			}
		}
		return map;
	}

	private String GetTime(TimeRange range, boolean begin) {
		return range == null ? null : (begin ? range.getBegin() : range
				.getEnd());
	}

	@Test
	@Category(P2.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_001() {
		Logger.start(true, "查询买手今年所有订单的销售额成功");
		try {
			// 参数
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.ThisYear.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(OrderStatusEnum.AccountPaid.getValue());
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();
			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P1.class)
	@TestCase
	@Ignore
	public void Tc_GetSellerSalesAmount_002() {
		Logger.start(true, "查询买手所有待付款和已付款订单的销售额成功");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.ThisWeek);
			//			DateTypeList.add(DateTypeEnum.ThisQuarter);
			//			DateTypeList.add(DateTypeEnum.ThisYear);
			//			DateTypeList.add(DateTypeEnum.ThisMonth);
			//			DateTypeList.add(DateTypeEnum.All);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.ThisQuarter.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(1);
			OrderStatusList.add(4);
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();
			//			Logger.comment("call send:"
			//					+ call.getEntityString());
			//			Logger.comment("call response:"
			//					+ call.getReturnData());
			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P3.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_003() {
		Logger.start(true, "买手用户id为空");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.ThisWeek);
			//			DateTypeList.add(DateTypeEnum.ThisQuarter);
			//			DateTypeList.add(DateTypeEnum.ThisYear);
			//			DateTypeList.add(DateTypeEnum.ThisMonth);
			//			DateTypeList.add(DateTypeEnum.All);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.ThisWeek.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(1);
			OrderStatusList.add(4);
			request.setOrderStatusList(OrderStatusList);
			// 发送请求
			call.setData(request);
			call.callService();
			//			Logger.comment("call send:"
			//					+ call.getEntityString());
			//			Logger.comment("call response:"
			//					+ call.getReturnData());
			Logger.verifyEquals(ECode.ERROR400, call.getCode(), "验证Code");
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P3.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_004() {
		Logger.start(true, "买手用户id不存在");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.ThisWeek);
			//			DateTypeList.add(DateTypeEnum.ThisQuarter);
			//			DateTypeList.add(DateTypeEnum.ThisYear);
			//			DateTypeList.add(DateTypeEnum.ThisMonth);
			//			DateTypeList.add(DateTypeEnum.All);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.All.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(1);
			OrderStatusList.add(4);
			request.setOrderStatusList(OrderStatusList);
			int SellerId = 11;
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();
			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P1.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_005() {
		Logger.start(true, "查询本周确认收货订单的销售额成功");
		try {
			// 参数
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.ThisWeek.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(OrderStatusEnum.Received.getValue());
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();
			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P1.class)
	@TestCase
	@Ignore
	public void Tc_GetSellerSalesAmount_006() {
		Logger.start(true, "查询本月订单确立状态的订单的销售额成功");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.ThisMonth);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.ThisMonth.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(OrderStatusEnum.OrderEstablish.getValue());
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();
			//			Logger.comment("call send:"
			//					+ call.getEntityString());
			//			Logger.comment("call response:"
			//					+ call.getReturnData());
			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P1.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_007() {
		Logger.start(true, "查询本季度已付款状态的订单的销售额成功");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.ThisQuarter);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.ThisQuarter.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(OrderStatusEnum.AccountPaid.getValue());
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();
			//			Logger.comment("call send:"
			//					+ call.getEntityString());
			//			Logger.comment("call response:"
			//					+ call.getReturnData());
			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P1.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_008() {
		Logger.start(true, "查询今年已发货状态的订单的销售额成功");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.ThisYear);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.ThisYear.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(OrderStatusEnum.Shipped.getValue());
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();
			//			Logger.comment("call send:"
			//					+ call.getEntityString());
			//			Logger.comment("call response:"
			//					+ call.getReturnData());
			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P1.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_009() {
		Logger.start(true, "查询今年买家取消状态的订单的销售额成功");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.ThisYear);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.ThisYear.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(OrderStatusEnum.UserAcceptCancel.getValue());
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();
			//			Logger.comment("call send:"
			//					+ call.getEntityString());
			//			Logger.comment("call response:"
			//					+ call.getReturnData());
			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P1.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_010() {
		Logger.start(true, "查询今年买手取消状态的订单的销售额成功");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.ThisYear);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.ThisYear.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(OrderStatusEnum.SellerAcceptCancel.getValue());
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();
			//			Logger.comment("call send:"
			//					+ call.getEntityString());
			//			Logger.comment("call response:"
			//					+ call.getReturnData());
			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P1.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_011() {
		Logger.start(true, "查询今年系统自动取消状态的订单的销售额成功");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.ThisYear);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.ThisYear.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(OrderStatusEnum.SystemCancel.getValue());
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();

			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P1.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_012() {
		Logger.start(true, "查询今年订单补款完成(等待发货)状态的订单的销售额成功");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.ThisYear);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.ThisYear.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(OrderStatusEnum.SellerAccept.getValue());
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();
			//			Logger.comment("call send:"
			//					+ call.getEntityString());
			//			Logger.comment("call response:"
			//					+ call.getReturnData());
			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P1.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_013() {
		Logger.start(true, "查询所有时间内已确认接单(等待发起补款)完成(等待发货)状态的订单的销售额成功");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.All);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			DateTypeList.add(DateTypeEnum.All.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(OrderStatusEnum.OrderPostPay.getValue());
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();

			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}

	@Test
	@Category(P1.class)
	@TestCase
	public void Tc_GetSellerSalesAmount_014() {
		Logger.start(true, "查询本月所有状态的订单的销售额成功");
		try {
			// 参数
			//			ArrayList<DateTypeEnum> DateTypeList = new ArrayList<DateTypeEnum>();
			//			DateTypeList.add(DateTypeEnum.ThisWeek);
			ArrayList<Integer> DateTypeList = new ArrayList<Integer>();
			//			DateTypeList.add(DateTypeEnum.ThisWeek.getValue());
			DateTypeList.add(DateTypeEnum.ThisWeek.getValue());
			request.setDateTypeList(DateTypeList);
			ArrayList<Integer> OrderStatusList = new ArrayList<Integer>();
			OrderStatusList.add(OrderStatusEnum.OrderEstablish.getValue());
			OrderStatusList.add(OrderStatusEnum.AccountPaid.getValue());
			OrderStatusList.add(OrderStatusEnum.Shipped.getValue());
			OrderStatusList.add(OrderStatusEnum.Received.getValue());
			OrderStatusList.add(OrderStatusEnum.SellerAccept.getValue());
			OrderStatusList.add(OrderStatusEnum.UserAcceptCancel.getValue());
			OrderStatusList.add(OrderStatusEnum.SellerAcceptCancel.getValue());
			OrderStatusList.add(OrderStatusEnum.SystemCancel.getValue());
			request.setOrderStatusList(OrderStatusList);
			int SellerId = Integer.valueOf(EnvSetup.getData("SellerId"));
			request.setSellerId(SellerId);
			// 发送请求
			call.setData(request);
			call.callService();

			Logger.verifyEquals(ECode.SUCCESS, call.getCode(), "验证Code");
			verify();
		} catch (Exception e) {
			Logger.fail(e);
		}
	}
}